Accedere ai campi degli oggetti tramite CustomField

Creato il: 15.08.2026
Nelle sezioni precedenti abbiamo utilizzato proprietà come:

Product.Code
Product.Name
Anag.EmailAddress


In questi casi il nome della proprietà indica chiaramente quale informazione viene restituita: Code restituisce il codice dell'articolo, Name la descrizione e EmailAddress l'indirizzo email.

Gli oggetti di Ready Pro possono però mettere a disposizione molte altre informazioni.

Per alcuni dei campi più comuni esiste una proprietà con un nome specifico. Molti altri campi sono invece accessibili attraverso una proprietà particolare chiamata CustomField.

Come funziona CustomField

CustomField riceve tra parentesi un numero che identifica il campo da recuperare.

La forma generale è:

Oggetto.CustomField(ID)


Ad esempio:

Product.CustomField(41)


recupera la ragione sociale del fornitore primario di quell'articolo

Non è necessario conoscere o ricordare questi numeri. Lo SCRIPT EDITOR permette di individuare i campi disponibili e di inserire automaticamente nello script la proprietà corrispondente.

Premendo Aggiungi campo/proprietà (F4) è possibile selezionare l'oggetto da utilizzare e successivamente il campo da recuperare.

Attivando l'opzione Visualizza campi script (F5), nella colonna Script viene mostrata l'espressione utilizzata per accedere a ciascun campo.
Nell'esempio è possibile vedere che alcuni campi dispongono di una proprietà specifica.

Ad esempio:
Product.Code

viene utilizzato per il Codice articolo, mentre:
Product.Name

viene utilizzato per la Descrizione articolo.

Per molti altri campi viene invece utilizzata la proprietà CustomField.

Supponiamo di voler recuperare la ragione sociale del fornitore primario dell'articolo.
Nella finestra di selezione dei campi, la colonna Script indica per il campo Fornitore primario : Ragione sociale la seguente proprietà:
Product.CustomField(41)


Selezionando il campo e premendo OK (F12), Ready Pro inserisce automaticamente l'espressione nello script (l'inserimento avviene nel punto in cui eravamo posizionati con il cursore al momento dell'apertura della finestra)
Lo script può quindi essere, ad esempio:

Option Explicit
 
Dim RisultatoScript
 
RisultatoScript = Product.CustomField(41)
Response.Write(RisultatoScript)


Per ogni riga verrà recuperata la ragione sociale del fornitore primario associato all'articolo.

Esiste però una caratteristica importante da considerare: CustomField restituisce sempre il valore sotto forma di stringa, cioè come valore testuale.
Questo vale anche quando il campo selezionato contiene in Ready Pro un numero, una data o un altro tipo di valore.

Consideriamo, ad esempio, il campo Quantità da ordinare.
Nella finestra di selezione Ready Pro indica che si tratta di un campo di tipo Numero e che il valore corrisponde a:
Product.CustomField(335)

CustomField, tuttavia, restituirebbe questo valore come testo.

Poiché Ready Pro conosce il tipo del campo selezionato, utilizzando Aggiungi campo/proprietà (F4) l'espressione viene inserita automaticamente aggiungendo la conversione necessaria:
Rdy.toDouble(Product.CustomField(335))
In questo esempio:
Product.CustomField(335)

recupera il contenuto del campo, mentre:
Rdy.toDouble(...)

converte il valore restituito da CustomField in un valore numerico.

Questa conversione è importante quando il valore deve essere utilizzato successivamente per eseguire calcoli, confronti o altre operazioni numeriche.
Ma perché è necessario convertire un valore che, apparentemente, contiene già un numero?
Ad esempio, che differenza c'è per uno script tra il testo "10" e il numero 10?

Per rispondere a questa domanda è necessario introdurre il concetto di tipo di dato.

Login